Micron Document
<!DOCTYPE html>
<html class="client-nojs vector-feature-night-mode-disabled vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-sticky-header-enabled" lang="en" dir="ltr"><head>
<meta charset="UTF-8">
<title>Data control language</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="canonical" href="https://en.wikipedia.org/wiki/Data_control_language"> <link href="./mw/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/ext.pygments.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/user.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" type="text/css" href="./mw/site.styles.css">
<link rel="stylesheet" type="text/css" href="./mw/noscript.css">
<link rel="stylesheet" type="text/css" href="./footer.css">
<link rel="stylesheet" type="text/css" href="./vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Data_control_language rootpage-Data_control_language skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading">
<span id="openzim-page-title" class="mw-page-title-main"><span class="mw-page-title-main">Data control language</span></span>
</h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="en" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr">
<style data-mw-deduplicate="TemplateStyles:r1305433154">
/* start https://en.wikipedia.org/ */


.mw-parser-output .ambox{border:1px solid #a2a9b1;border-left:10px solid #36c;background-color:#fbfbfb;box-sizing:border-box}.mw-parser-output .ambox+link+.ambox,.mw-parser-output .ambox+link+style+.ambox,.mw-parser-output .ambox+link+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+style+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+link+.ambox{margin-top:-1px}html body.mediawiki .mw-parser-output .ambox.mbox-small-left{margin:4px 1em 4px 0;overflow:hidden;width:238px;border-collapse:collapse;font-size:88%;line-height:1.25em}.mw-parser-output .ambox-speedy{border-left:10px solid #b32424;background-color:#fee7e6}.mw-parser-output .ambox-delete{border-left:10px solid #b32424}.mw-parser-output .ambox-content{border-left:10px solid #f28500}.mw-parser-output .ambox-style{border-left:10px solid #fc3}.mw-parser-output .ambox-move{border-left:10px solid #9932cc}.mw-parser-output .ambox-protection{border-left:10px solid #a2a9b1}.mw-parser-output .ambox .mbox-text{border:none;padding:0.25em 0.5em;width:100%}.mw-parser-output .ambox .mbox-image{border:none;padding:2px 0 2px 0.5em;text-align:center}.mw-parser-output .ambox .mbox-imageright{border:none;padding:2px 0.5em 2px 0;text-align:center}.mw-parser-output .ambox .mbox-empty-cell{border:none;padding:0;width:1px}.mw-parser-output .ambox .mbox-image-div{width:52px}@media(min-width:720px){.mw-parser-output .ambox{margin:0 10%}}@media print{body.ns-0 .mw-parser-output .ambox{display:none!important}}


/* end https://en.wikipedia.org/ */
</style>
<p>A <b>data control language</b> (<b>DCL</b>) is a syntax similar to a computer <a href="Programming_language" title="Programming language">programming language</a> used to control access to data stored in a database (<a href="Authorization" title="Authorization">authorization</a>). In particular, it is a component of <a href="Structured_Query_Language" class="mw-redirect" title="Structured Query Language">Structured Query Language</a> (SQL). Data Control Language is one of the logical group in SQL Commands. <a rel="nofollow" class="external text" href="https://blog.ansi.org/2018/10/sql-standard-iso-iec-9075-2016-ansi-x3-135/">SQL</a><sup id="cite_ref-1" class="reference"><a href="#cite_note-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup> is the standard language for relational database management systems. SQL statements are used to perform tasks such as insert data to a database, delete or update data in a database, or retrieve data from a database.
</p><p>Though database systems use SQL, they also have their own additional proprietary extensions that are usually only used on their system. For example, Microsoft SQL server uses Transact-SQL (T-SQL), which is an extension of SQL. Similarly, Oracle uses PL-SQL, which an Oracle-specific SQL extension. However, the standard SQL commands such as "Select", "Insert", "Update", "Delete", "Create", and "Drop" can be used to accomplish almost everything that one needs to do with a database.
</p><p>Examples of DCL commands include the SQL commands:
</p>
<ul><li>GRANT to allow specified users to perform specified tasks.</li>
<li>REVOKE to remove the user accessibility to <a href="Database_object" title="Database object">database object</a>.</li></ul>
<p>The operations for which privileges may be granted to or revoked from a user or role apply to both the <a href="Data_definition_language" title="Data definition language">Data definition language</a> (DDL) and the <a href="Data_manipulation_language" title="Data manipulation language">Data manipulation language</a> (DML), and may include CONNECT, <a href="Select_(SQL)" title="Select (SQL)">SELECT</a>, <a href="Insert_(SQL)" title="Insert (SQL)">INSERT</a>, UPDATE, <a href="Delete_(SQL)" title="Delete (SQL)">DELETE</a>, EXECUTE, and USAGE.
</p>
<meta property="mw:PageProp/toc">
<div class="mw-heading mw-heading2"><h2 id="Microsoft_SQL_Server">Microsoft SQL Server</h2></div>
<p>In <a href="Microsoft_SQL_Server" title="Microsoft SQL Server">Microsoft SQL Server</a> there are four groups of SQL commands:<sup id="cite_ref-sql-server-tip-card_2-0" class="reference"><a href="#cite_note-sql-server-tip-card-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup>
</p>
<ul><li>Data Manipulation Language (DML)</li>
<li>Data Definition Language (DDL)</li>
<li>Data Control Language (DCL)</li>
<li>Transaction Control Language (TCL)</li></ul>
<p>DCL commands are used for access control and permission management for users in the database. With them we can easily allow or deny some actions for users on the tables or records (row level security).
</p><p>DCL commands are:<sup id="cite_ref-sql-server-tip-card_2-1" class="reference"><a href="#cite_note-sql-server-tip-card-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup>
</p>
<dl><dt>GRANT</dt>
<dd>gives specified permissions for the table (and other objects) to, or assigns a specified role with certain permissions to, specified groups or users of a database;</dd>
<dt>REVOKE</dt>
<dd>takes away specified permissions for the table (and other objects) to, or takes away a specified role with certain permissions to, specified groups or users of a database;</dd>
<dt>DENY</dt>
<dd>denies a specified permission to a security object.</dd></dl>
<p>For example: GRANT can be used to give privileges to user to do SELECT, INSERT, UPDATE and DELETE on a specific table or multiple tables.
</p><p>The REVOKE command is used to take a privilege away (default) or revoking specific command like UPDATE or DELETE based on requirements.
</p>
<div class="mw-heading mw-heading3"><h3 id="Example">Example</h3></div>
<div class="mw-highlight mw-highlight-lang-tsql mw-content-ltr" dir="ltr"><pre><span class="k">Grant</span><span class="w"> </span><span class="k">SELECT</span><span class="p">,</span><span class="k">INSERT</span><span class="p">,</span><span class="k">UPDATE</span><span class="p">,</span><span class="k">DELETE</span><span class="w"> </span><span class="k">on</span><span class="w"> </span><span class="n">Employees</span><span class="w"> </span><span class="k">To</span><span class="w"> </span><span class="n">User1</span>

<span class="k">Revoke</span><span class="w"> </span><span class="k">INSERT</span><span class="w"> </span><span class="k">On</span><span class="w"> </span><span class="n">Employees</span><span class="w"> </span><span class="k">To</span><span class="w"> </span><span class="n">User1</span>

<span class="k">Deny</span><span class="w"> </span><span class="k">Update</span><span class="w"> </span><span class="k">On</span><span class="w"> </span><span class="n">Employees</span><span class="w"> </span><span class="k">to</span><span class="w"> </span><span class="n">User1</span>
</pre></div>
<p>In the first example, GRANT gives privileges to user User1 to do SELECT, INSERT, UPDATE and DELETE on the table named Employees.
</p><p>In the second example, REVOKE removes User1's privileges to use the INSERT command on the table Employees.
</p><p>DENY is a specific command. We can conclude that every user has a list of privilege which is denied or granted so command DENY is there to explicitly ban you some privileges on the database objects.:
</p>
<div class="mw-heading mw-heading2"><h2 id="Oracle_Database">Oracle Database</h2></div>
<p><a href="Oracle_Database" title="Oracle Database">Oracle Database</a> divide SQL commands to different types. They are.
</p>
<ul><li>Data Definition Language (DDL) Statements</li>
<li>Data Manipulation Language (DML) Statements</li>
<li>Transaction Control Statements</li>
<li>Session Control Statements</li>
<li>System Control Statement</li>
<li>Embedded SQL Statements</li></ul>
<p>For details refer <a rel="nofollow" class="external text" href="https://docs.oracle.com/cd/B28359_01/server.111/b28286/statements_1001.htm#SQLRF30001">Oracle-</a><sup id="cite_ref-3" class="reference"><a href="#cite_note-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup><a rel="nofollow" class="external text" href="https://docs.oracle.com/cd/B28359_01/server.111/b28286/statements_1001.htm#SQLRF30001">TCL</a>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
</p><p>Data definition language (DDL) statements let you to perform these tasks:
</p>
<ul><li>Create, alter, and drop schema objects</li>
<li>Grant and revoke privileges and roles</li>
<li>Analyze information on a table, index, or cluster</li>
<li>Establish auditing options</li>
<li>Add comments to the data dictionary</li></ul>
<p>So Oracle Database DDL commands include the <b>Grant</b> and <b>revoke</b> privileges which is actually part of Data control Language in Microsoft SQL server.
</p><p>Syntax for grant and revoke in Oracle Database:
</p>
<div class="mw-heading mw-heading3"><h3 id="Example_2">Example</h3></div>
<div class="mw-highlight mw-highlight-lang-sql mw-content-ltr" dir="ltr"><pre><span class="k">GRANT</span><span class="w"> </span><span class="k">SELECT</span><span class="p">,</span><span class="w"> </span><span class="k">INSERT</span><span class="p">,</span><span class="w"> </span><span class="k">UPDATE</span><span class="p">,</span><span class="w"> </span><span class="k">DELETE</span><span class="w"> </span><span class="k">ON</span><span class="w"> </span><span class="n">db1</span><span class="p">.</span><span class="n">Employee</span><span class="w"> </span><span class="k">TO</span><span class="w"> </span><span class="n">user1</span><span class="p">;</span>

<span class="k">REVOKE</span><span class="w"> </span><span class="k">SELECT</span><span class="p">,</span><span class="w"> </span><span class="k">INSERT</span><span class="p">,</span><span class="w"> </span><span class="k">UPDATE</span><span class="p">,</span><span class="w"> </span><span class="k">DELETE</span><span class="w"> </span><span class="k">ON</span><span class="w"> </span><span class="n">db1</span><span class="p">.</span><span class="n">Employee</span><span class="w"> </span><span class="k">FROM</span><span class="w"> </span><span class="n">user1</span><span class="p">;</span>
</pre></div>
<div class="mw-heading mw-heading3"><h3 id="Transaction_Control_Statements_in_Oracle">Transaction Control Statements in Oracle</h3></div>
<p>Transaction control statements manage changes made by DML statements. The transaction control statements are:
</p>
<ul><li>COMMIT</li>
<li>ROLLBACK</li>
<li>SAVEPOINT</li>
<li>SET TRANSACTION</li>
<li>SET CONSTRAINT</li></ul>
<div class="mw-heading mw-heading2"><h2 id="MySQL">MySQL</h2></div>
<p><a href="MySQL" title="MySQL">MySQL</a> server they divide SQL statements into different type of statement
</p>
<ul><li>Data Definition Statements</li>
<li>Data Manipulation Statements</li>
<li>Transactional and Locking Statements</li>
<li>Replication Statements</li>
<li>Prepared Statements</li>
<li>Compound Statement Syntax</li>
<li>Database Administration Statements</li>
<li>Utility Statements</li></ul>
<p>For details refer <a rel="nofollow" class="external text" href="https://dev.mysql.com/doc/refman/8.0/en/account-management-statements.html">MySQL Transactional statements</a><sup id="cite_ref-4" class="reference"><a href="#cite_note-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup>
</p><p>The grant, revoke syntax are as part of Database administration statementsàAccount Management System.
</p><p>The GRANT statement enables system administrators to grant privileges and roles, which can be granted to user accounts and roles. These syntax restrictions apply:
</p>
<ul><li>GRANT cannot mix granting both privileges and roles in the same statement. A given GRANT statement must grant either privileges or roles.</li>
<li>The ON clause distinguishes whether the statement grants privileges or roles:</li>
<li>With ON, the statement grants privileges</li>
<li>Without ON, the statement grants roles.</li>
<li>It is permitted to assign both privileges and roles to an account, but you must use separate GRANT statements, each with syntax appropriate to what is to be granted.</li></ul>
<p>The REVOKE statement enables system administrators to revoke privileges and roles, which can be revoked from user accounts and roles.
</p>
<div class="mw-heading mw-heading3"><h3 id="Examples">Examples</h3></div>
<div class="mw-highlight mw-highlight-lang-mysql mw-content-ltr" dir="ltr"><pre><span class="k">REVOKE</span><span class="w"> </span><span class="k">INSERT</span><span class="w"> </span><span class="k">ON</span><span class="w"> </span><span class="o">*</span><span class="p">.</span><span class="o">*</span><span class="w"> </span><span class="k">FROM</span><span class="w"> </span><span class="s1">'jeffrey'</span><span class="nv">@'localhost'</span><span class="p">;</span>

<span class="k">REVOKE</span><span class="w"> </span><span class="s1">'role1'</span><span class="p">,</span><span class="w"> </span><span class="s1">'role2'</span><span class="w"> </span><span class="k">FROM</span><span class="w"> </span><span class="s1">'user1'</span><span class="nv">@'localhost'</span><span class="p">,</span><span class="w"> </span><span class="s1">'user2'</span><span class="nv">@'localhost'</span><span class="p">;</span>

<span class="k">REVOKE</span><span class="w"> </span><span class="k">SELECT</span><span class="w"> </span><span class="k">ON</span><span class="w"> </span><span class="n">world</span><span class="p">.</span><span class="o">*</span><span class="w"> </span><span class="k">FROM</span><span class="w"> </span><span class="s1">'role3'</span><span class="p">;</span>

<span class="k">GRANT</span><span class="w"> </span><span class="k">ALL</span><span class="w"> </span><span class="k">ON</span><span class="w"> </span><span class="n">db1</span><span class="p">.</span><span class="o">*</span><span class="w"> </span><span class="k">TO</span><span class="w"> </span><span class="s1">'jeffrey'</span><span class="nv">@'localhost'</span><span class="p">;</span>

<span class="k">GRANT</span><span class="w"> </span><span class="s1">'role1'</span><span class="p">,</span><span class="w"> </span><span class="s1">'role2'</span><span class="w"> </span><span class="k">TO</span><span class="w"> </span><span class="s1">'user1'</span><span class="nv">@'localhost'</span><span class="p">,</span><span class="w"> </span><span class="s1">'user2'</span><span class="nv">@'localhost'</span><span class="p">;</span>

<span class="k">GRANT</span><span class="w"> </span><span class="k">SELECT</span><span class="w"> </span><span class="k">ON</span><span class="w"> </span><span class="n">world</span><span class="p">.</span><span class="o">*</span><span class="w"> </span><span class="k">TO</span><span class="w"> </span><span class="s1">'role3'</span><span class="p">;</span>
</pre></div>
<p>In <a href="PostgreSQL" title="PostgreSQL">PostgreSQL</a>, executing DCL is <a href="Database_transaction" title="Database transaction">transactional</a>, and can be rolled back.
</p><p><b>Grant</b> and <b>Revoke</b> are the SQL commands are used to control the privileges given to the users in a Databases
</p><p><a href="SQLite" title="SQLite">SQLite</a> does not have any DCL commands as it does not have usernames or logins. Instead, SQLite depends on <a href="File-system_permissions" title="File-system permissions">file-system permissions</a> to define who can open and access a database.<sup id="cite_ref-5" class="reference"><a href="#cite_note-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading2"><h2 id="See_also">See also</h2></div>
<ul><li><a href="Data_definition_language" title="Data definition language">Data definition language</a></li>
<li><a href="Data_manipulation_language" title="Data manipulation language">Data manipulation language</a></li>
<li><a href="Data_query_language" title="Data query language">Data query language</a></li></ul>
<div class="mw-heading mw-heading2"><h2 id="References">References</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1239543626">
/* start https://en.wikipedia.org/ */


.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}


/* end https://en.wikipedia.org/ */
</style><div class="reflist">
<div class="mw-references-wrap"><ol class="references">
<li id="cite_note-1"><span class="mw-cite-backlink"><b><a href="#cite_ref-1">^</a></b></span> <span class="reference-text"><style data-mw-deduplicate="TemplateStyles:r1238218222">
/* start https://en.wikipedia.org/ */


.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free.id-lock-free a{background:url("./mw/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited.id-lock-limited a,.mw-parser-output .id-lock-registration.id-lock-registration a{background:url("./mw/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription.id-lock-subscription a{background:url("./mw/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("./mw/Wikisource-logo.svg")right 0.1em center/12px no-repeat}body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-free a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-limited a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-registration a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-subscription a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .cs1-ws-icon a{background-size:contain;padding:0 1em 0 0}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:var(--color-error,#d33)}.mw-parser-output .cs1-visible-error{color:var(--color-error,#d33)}.mw-parser-output .cs1-maint{display:none;color:#085;margin-left:0.3em}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}@media screen{.mw-parser-output .cs1-format{font-size:95%}html.skin-theme-clientpref-night .mw-parser-output .cs1-maint{color:#18911f}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .cs1-maint{color:#18911f}}


/* end https://en.wikipedia.org/ */
</style><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://blog.ansi.org/2018/10/sql-standard-iso-iec-9075-2016-ansi-x3-135/">"The SQL Standard – ISO/IEC 9075:2016 (ANSI X3.135) – ANSI Blog"</a>. <i>The ANSI Blog</i>. 2018-10-05<span class="reference-accessdate">. Retrieved <span class="nowrap">2020-09-19</span></span>.</cite></span>
</li>
<li id="cite_note-sql-server-tip-card-2"><span class="mw-cite-backlink">^ <a href="#cite_ref-sql-server-tip-card_2-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-sql-server-tip-card_2-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><cite id="CITEREFLove2023" class="citation web cs1">Love, Aubrey (March 28, 2023). <a rel="nofollow" class="external text" href="https://www.mssqltips.com/sqlservertip/7575/sql-clause-statement-command-expression-batch-definition/">"SQL Clause, Statement, Command, Expression and Batch Defined"</a>. <i>MSSQLTips</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2025-01-26</span></span>.</cite></span>
</li>
<li id="cite_note-3"><span class="mw-cite-backlink"><b><a href="#cite_ref-3">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://docs.oracle.com/cd/B28359_01/server.111/b28286/statements_1001.htm#SQLRF30001">"Database SQL Language Reference"</a>. <i>docs.oracle.com</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2020-09-19</span></span>.</cite></span>
</li>
<li id="cite_note-4"><span class="mw-cite-backlink"><b><a href="#cite_ref-4">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://dev.mysql.com/doc/refman/8.0/en/account-management-statements.html">"MySQL&nbsp;:: MySQL 8.0 Reference Manual&nbsp;:: 13.7.1 Account Management Statements"</a>. <i>dev.mysql.com</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2020-09-19</span></span>.</cite></span>
</li>
<li id="cite_note-5"><span class="mw-cite-backlink"><b><a href="#cite_ref-5">^</a></b></span> <span class="reference-text">Kreibich, J.A., 2010. <a rel="nofollow" class="external text" href="https://books.google.com/books?id=HFIM47wp0X0C">Using SQLite</a>, O’Reilly.</span>
</li>
</ol></div></div>
<div class="navbox-styles"><style data-mw-deduplicate="TemplateStyles:r1129693374">
/* start https://en.wikipedia.org/ */


.mw-parser-output .hlist dl,.mw-parser-output .hlist ol,.mw-parser-output .hlist ul{margin:0;padding:0}.mw-parser-output .hlist dd,.mw-parser-output .hlist dt,.mw-parser-output .hlist li{margin:0;display:inline}.mw-parser-output .hlist.inline,.mw-parser-output .hlist.inline dl,.mw-parser-output .hlist.inline ol,.mw-parser-output .hlist.inline ul,.mw-parser-output .hlist dl dl,.mw-parser-output .hlist dl ol,.mw-parser-output .hlist dl ul,.mw-parser-output .hlist ol dl,.mw-parser-output .hlist ol ol,.mw-parser-output .hlist ol ul,.mw-parser-output .hlist ul dl,.mw-parser-output .hlist ul ol,.mw-parser-output .hlist ul ul{display:inline}.mw-parser-output .hlist .mw-empty-li{display:none}.mw-parser-output .hlist dt::after{content:": "}.mw-parser-output .hlist dd::after,.mw-parser-output .hlist li::after{content:" · ";font-weight:bold}.mw-parser-output .hlist dd:last-child::after,.mw-parser-output .hlist dt:last-child::after,.mw-parser-output .hlist li:last-child::after{content:none}.mw-parser-output .hlist dd dd:first-child::before,.mw-parser-output .hlist dd dt:first-child::before,.mw-parser-output .hlist dd li:first-child::before,.mw-parser-output .hlist dt dd:first-child::before,.mw-parser-output .hlist dt dt:first-child::before,.mw-parser-output .hlist dt li:first-child::before,.mw-parser-output .hlist li dd:first-child::before,.mw-parser-output .hlist li dt:first-child::before,.mw-parser-output .hlist li li:first-child::before{content:" (";font-weight:normal}.mw-parser-output .hlist dd dd:last-child::after,.mw-parser-output .hlist dd dt:last-child::after,.mw-parser-output .hlist dd li:last-child::after,.mw-parser-output .hlist dt dd:last-child::after,.mw-parser-output .hlist dt dt:last-child::after,.mw-parser-output .hlist dt li:last-child::after,.mw-parser-output .hlist li dd:last-child::after,.mw-parser-output .hlist li dt:last-child::after,.mw-parser-output .hlist li li:last-child::after{content:")";font-weight:normal}.mw-parser-output .hlist ol{counter-reset:listitem}.mw-parser-output .hlist ol>li{counter-increment:listitem}.mw-parser-output .hlist ol>li::before{content:" "counter(listitem)"\a0 "}.mw-parser-output .hlist dd ol>li:first-child::before,.mw-parser-output .hlist dt ol>li:first-child::before,.mw-parser-output .hlist li ol>li:first-child::before{content:" ("counter(listitem)"\a0 "}


/* end https://en.wikipedia.org/ */
</style><style data-mw-deduplicate="TemplateStyles:r1236075235">
/* start https://en.wikipedia.org/ */


.mw-parser-output .navbox{box-sizing:border-box;border:1px solid #a2a9b1;width:100%;clear:both;font-size:88%;text-align:center;padding:1px;margin:1em auto 0}.mw-parser-output .navbox .navbox{margin-top:0}.mw-parser-output .navbox+.navbox,.mw-parser-output .navbox+.navbox-styles+.navbox{margin-top:-1px}.mw-parser-output .navbox-inner,.mw-parser-output .navbox-subgroup{width:100%}.mw-parser-output .navbox-group,.mw-parser-output .navbox-title,.mw-parser-output .navbox-abovebelow{padding:0.25em 1em;line-height:1.5em;text-align:center}.mw-parser-output .navbox-group{white-space:nowrap;text-align:right}.mw-parser-output .navbox,.mw-parser-output .navbox-subgroup{background-color:#fdfdfd}.mw-parser-output .navbox-list{line-height:1.5em;border-color:#fdfdfd}.mw-parser-output .navbox-list-with-group{text-align:left;border-left-width:2px;border-left-style:solid}.mw-parser-output tr+tr>.navbox-abovebelow,.mw-parser-output tr+tr>.navbox-group,.mw-parser-output tr+tr>.navbox-image,.mw-parser-output tr+tr>.navbox-list{border-top:2px solid #fdfdfd}.mw-parser-output .navbox-title{background-color:#ccf}.mw-parser-output .navbox-abovebelow,.mw-parser-output .navbox-group,.mw-parser-output .navbox-subgroup .navbox-title{background-color:#ddf}.mw-parser-output .navbox-subgroup .navbox-group,.mw-parser-output .navbox-subgroup .navbox-abovebelow{background-color:#e6e6ff}.mw-parser-output .navbox-even{background-color:#f7f7f7}.mw-parser-output .navbox-odd{background-color:transparent}.mw-parser-output .navbox .hlist td dl,.mw-parser-output .navbox .hlist td ol,.mw-parser-output .navbox .hlist td ul,.mw-parser-output .navbox td.hlist dl,.mw-parser-output .navbox td.hlist ol,.mw-parser-output .navbox td.hlist ul{padding:0.125em 0}.mw-parser-output .navbox .navbar{display:block;font-size:100%}.mw-parser-output .navbox-title .navbar{float:left;text-align:left;margin-right:0.5em}body.skin--responsive .mw-parser-output .navbox-image img{max-width:none!important}@media print{body.ns-0 .mw-parser-output .navbox{display:none!important}}


/* end https://en.wikipedia.org/ */
</style></div><div role="navigation" class="navbox" aria-labelledby="Database_management_systems327" style="padding:3px"><table class="nowraplinks hlist mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><style data-mw-deduplicate="TemplateStyles:r1239400231">
/* start https://en.wikipedia.org/ */


.mw-parser-output .navbar{display:inline;font-size:88%;font-weight:normal}.mw-parser-output .navbar-collapse{float:left;text-align:left}.mw-parser-output .navbar-boxtext{word-spacing:0}.mw-parser-output .navbar ul{display:inline-block;white-space:nowrap;line-height:inherit}.mw-parser-output .navbar-brackets::before{margin-right:-0.125em;content:"[ "}.mw-parser-output .navbar-brackets::after{margin-left:-0.125em;content:" ]"}.mw-parser-output .navbar li{word-spacing:-0.125em}.mw-parser-output .navbar a>span,.mw-parser-output .navbar a>abbr{text-decoration:inherit}.mw-parser-output .navbar-mini abbr{font-variant:small-caps;border-bottom:none;text-decoration:none;cursor:inherit}.mw-parser-output .navbar-ct-full{font-size:114%;margin:0 7em}.mw-parser-output .navbar-ct-mini{font-size:114%;margin:0 4em}html.skin-theme-clientpref-night .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}@media(prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}}@media print{.mw-parser-output .navbar{display:none!important}}


/* end https://en.wikipedia.org/ */
</style><div id="Database_management_systems327" style="font-size:114%;margin:0 4em"><a href="Database" title="Database">Database management systems</a></div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%">Types</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Object_database" title="Object database">Object-oriented</a>
<ul><li><a href="Comparison_of_object_database_management_systems" title="Comparison of object database management systems">comparison</a></li></ul></li>
<li><a href="Relational_database" title="Relational database">Relational</a>
<ul><li><a href="List_of_relational_database_management_systems" title="List of relational database management systems">list</a></li>
<li><a href="Comparison_of_relational_database_management_systems" title="Comparison of relational database management systems">comparison</a></li></ul></li>
<li><a href="Key%E2%80%93value_database" title="Key–value database">Key–value</a></li>
<li><a href="Column-oriented_DBMS" class="mw-redirect" title="Column-oriented DBMS">Column-oriented</a>
<ul><li><a href="List_of_column-oriented_DBMSes" title="List of column-oriented DBMSes">list</a></li></ul></li>
<li><a href="Document-oriented_database" title="Document-oriented database">Document-oriented</a></li>
<li><a href="Wide-column_store" title="Wide-column store">Wide-column store</a></li>
<li><a href="Graph_database" title="Graph database">Graph</a></li>
<li><a href="NoSQL" title="NoSQL">NoSQL</a></li>
<li><a href="NewSQL" title="NewSQL">NewSQL</a></li>
<li><a href="In-memory_database" title="In-memory database">In-memory</a>
<ul><li><a href="List_of_in-memory_databases" title="List of in-memory databases">list</a></li></ul></li>
<li><a href="Multi-model_database" title="Multi-model database">Multi-model</a>
<ul><li><a href="Comparison_of_multi-model_databases" title="Comparison of multi-model databases">comparison</a></li></ul></li>
<li><a href="Cloud_database" title="Cloud database">Cloud</a></li>
<li><a href="Blockchain-based_database" title="Blockchain-based database">Blockchain-based database</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Concepts</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Database" title="Database">Database</a></li>
<li><a href="ACID" title="ACID">ACID</a></li>
<li><a href="Armstrong's_axioms" title="Armstrong's axioms">Armstrong's axioms</a></li>
<li><a href="Codd's_12_rules" title="Codd's 12 rules">Codd's 12 rules</a></li>
<li><a href="CAP_theorem" title="CAP theorem">CAP theorem</a></li>
<li><a href="Create%2C_read%2C_update_and_delete" title="Create, read, update and delete">CRUD</a></li>
<li><a href="Null_(SQL)" title="Null (SQL)">Null</a></li>
<li><a href="Candidate_key" title="Candidate key">Candidate key</a></li>
<li><a href="Foreign_key" title="Foreign key">Foreign key</a></li>
<li><a href="PACELC_design_principle" title="PACELC design principle">PACELC design principle</a></li>
<li><a href="Superkey" title="Superkey">Superkey</a></li>
<li><a href="Surrogate_key" title="Surrogate key">Surrogate key</a></li>
<li><a href="Unique_key" title="Unique key">Unique key</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Objects</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Relation_(database)" title="Relation (database)">Relation</a>
<ul><li><a href="Table_(database)" title="Table (database)">table</a></li>
<li><a href="Column_(database)" title="Column (database)">column</a></li>
<li><a href="Row_(database)" title="Row (database)">row</a></li></ul></li>
<li><a href="View_(SQL)" title="View (SQL)">View</a></li>
<li><a href="Database_transaction" title="Database transaction">Transaction</a></li>
<li><a href="Transaction_log" title="Transaction log">Transaction log</a></li>
<li><a href="Database_trigger" title="Database trigger">Trigger</a></li>
<li><a href="Database_index" title="Database index">Index</a></li>
<li><a href="Stored_procedure" title="Stored procedure">Stored procedure</a></li>
<li><a href="Cursor_(databases)" title="Cursor (databases)">Cursor</a></li>
<li><a href="Partition_(database)" title="Partition (database)">Partition</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Components</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Concurrency_control" title="Concurrency control">Concurrency control</a></li>
<li><a href="Data_dictionary" title="Data dictionary">Data dictionary</a></li>
<li><a href="Java_Database_Connectivity" title="Java Database Connectivity">JDBC</a></li>
<li><a href="XQuery_API_for_Java" title="XQuery API for Java">XQJ</a></li>
<li><a href="Open_Database_Connectivity" title="Open Database Connectivity">ODBC</a></li>
<li><a href="Query_language" title="Query language">Query language</a></li>
<li><a href="Query_optimization" title="Query optimization">Query optimizer</a></li>
<li><a href="Query_Rewriting" class="mw-redirect" title="Query Rewriting">Query rewriting system</a></li>
<li><a href="Query_plan" title="Query plan">Query plan</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Functions</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Database_administration" title="Database administration">Administration</a></li>
<li><a href="Query_optimization" title="Query optimization">Query optimization</a></li>
<li><a href="Replication_(computing)#DATABASE" title="Replication (computing)">Replication</a></li>
<li><a href="Shard_(database_architecture)" title="Shard (database architecture)">Sharding</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Related topics</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Database_model" title="Database model">Database models</a></li>
<li><a href="Database_normalization" title="Database normalization">Database normalization</a></li>
<li>Database storage</li>
<li><a href="Distributed_database" title="Distributed database">Distributed database</a></li>
<li><a href="Federated_database_system" title="Federated database system">Federated database system</a></li>
<li><a href="Referential_integrity" title="Referential integrity">Referential integrity</a></li>
<li><a href="Relational_algebra" title="Relational algebra">Relational algebra</a></li>
<li><a href="Relational_calculus" title="Relational calculus">Relational calculus</a></li>
<li><a href="Relational_model" title="Relational model">Relational model</a></li>
<li><a href="Object%E2%80%93relational_database" title="Object–relational database">Object–relational database</a></li>
<li><a href="Transaction_processing" title="Transaction processing">Transaction processing</a></li></ul>
</div></td></tr><tr><td class="navbox-abovebelow" colspan="2"><div>
<ul><li><span class="noviewer" typeof="mw:File"><span title="Category"></span></span> Category</li>
<li><span class="noviewer" typeof="mw:File"><span title="Outline"></span></span> <a href="Outline_of_databases" title="Outline of databases">Outline</a></li></ul>
</div></td></tr></tbody></table></div></div><!--htdig_noindex--><div><div class="zim-footer">
This article is issued from <a class="external text" title="Last edited on 2025-01-27" href="https://en.wikipedia.org/wiki/?title=Data_control_language&amp;oldid=1272212507">Wikipedia</a>. The text is available under <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en">Creative Commons Attribution-Share Alike 4.0</a> unless otherwise noted. Additional terms may apply for the media files.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>

</body></html>